Dynamic Software Birthmark for Java Based on Heap Memory Analysis

نویسندگان

  • Patrick P. F. Chan
  • Lucas Chi Kwong Hui
  • Siu-Ming Yiu
چکیده

Code theft has been a serious threat to the survival of the software industry. A dynamic software birthmark can help detect code theft by comparing the intrinsic characteristics of two programs extracted during their execution. We propose a dynamic birthmark system for Java based on the object reference graph. To the best of our knowledge, it is the first dynamic software birthmark making use of the heap memory. We evaluated our birthmark using 25 large-scale programs with most of them of tens of megabytes in size. Our results show that it is effective in detecting partial code theft. No false positive or false negative were found. More importantly, the birthmark remained intact even after the testing programs were obfuscated by the state-of-the-art Allatori obfuscator. These promising results reflect that our birthmark is ready for practical use.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Detecting Java Theft Based on Static API Trace Birthmark

Software birthmark is the inherent program characteristics that can identify a program. In this paper, we propose a static API trace birthmark to detect Java theft. Because the API traces can reflect the behavior of a program, our birthmark is more resilient than the existing static birthmarks. Because the API traces are extracted by static analysis, they can be applied to library programs whic...

متن کامل

Reviving Sequential Program Birthmarking for Multithreaded Software Plagiarism Detection

As multithreaded programs become increasingly popular, plagiarism of multithreaded programs starts to plague the software industry. Although there has been tremendous progress on software plagiarism detection technology, existing dynamic birthmark approaches are applicable only to sequential programs, due to the fact that thread scheduling nondeterminism severely perturbs birthmark generation a...

متن کامل

DBPD: A Dynamic Birthmark-based Software Plagiarism Detection Tool

With the burst of open source software, software plagiarism has been a serious threat to the software industry. In this paper, we present the demo tool DBPD: Dynamic Birthmark-based Software Plagiarism Detection. Major features of DBPD could be summarized as: 1) dynamic birthmark. The execution process of software is captured to generate the birthmark reflecting intrinsic properties of software...

متن کامل

Detecting Theft of Java Applications via a Static Birthmark Based on Weighted Stack Patterns

A software birthmark means the inherent characteristics of a program that can be used to identify the program. A comparison of such birthmarks facilitates the detection of software theft. In this paper, we propose a static Java birthmark based on a set of stack patterns, which reflect the characteristic of Java applications. A stack pattern denotes a sequence of bytecodes that share their opera...

متن کامل

Detecting Common Modules in Java Packages Based on Static Object Trace Birthmark

A software birthmark means inherent characteristics that can be used to identify a program. In this paper, we propose a birthmark technique based on object traces of Java programs. Java is an object-oriented programming language that provides various predefined class libraries that help programmers to produce software easily. In order to utilize Java class libraries, we have to use Java object ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011